package com.example.everying.model.entity.user;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;

/**
 * 活动积分配置实体类  其实就是关联表
 */
@Data
@TableName("activity_points_config")
public class ActivityPointsConfig {

    /**
     * 主键ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 类型
     */
    @TableField("type")
    @ApiModelProperty(value = "类型")
    private String type;

    /**
     * 活动名称
     */
    @ApiModelProperty(value = "活动名称")
    @TableField("activity_name")
    private String activityName;

    /**
     * 活动奖励积分
     */
    @ApiModelProperty(value = "活动奖励积分")
    @TableField("points")
    private Integer points;

    /**
     * 活动开始时间
     */
    @ApiModelProperty(value = "活动开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField("start_time")
    private LocalDateTime startTime;

    /**
     * 活动结束时间
     */
    @ApiModelProperty(value = "活动结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField("end_time")
    private LocalDateTime endTime;

    /**
     * 状态 0-禁用 1-启用 2-暂停
     */
    @TableField("status")
    @ApiModelProperty(value = "状态 0-禁用 1-启用 2-暂停")
    private Integer status;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;

    /**
     * 创建人
     */
    @TableField("creator")
    @ApiModelProperty(value = "创建人")
    private String creator;

    /**
     * 更新人
     */
    @TableField("updater")
    @ApiModelProperty(value = "更新人")
    private String updater;

    /**
     * 活动奖励积分
     */
    @ApiModelProperty(value = "连续签到天数")
    @TableField("continuous_days")
    private Integer continuousDays;


    /**
     * 轮播图url
     */
    @ApiModelProperty(value = "轮播图url")
    private String imageUrl;

    /**
     * h5服务器地址
     */
    @ApiModelProperty(value = "h5服务器地址")
    private String h5Path;

    /**
     * h5url
     */
    @ApiModelProperty(value = "h5url")
    private String h5Url;

    /**
     * 轮播图显示状态 0-不显示 1显示
     */
    @ApiModelProperty(value = "轮播图显示状态 0-不显示 1显示")
    private String imageStatus;
    /**
     * 活动列表显示状态 0-不显示 1显示
     */
    @ApiModelProperty(value = "活动列表显示状态 0-不显示 1显示")
    private String activityListStatus;

    /**
     * 活动频率：0-一次性 1-每日 2-每周
     */
    @ApiModelProperty(value = "活动频率：0-一次性 1-每日 2-每周")
    @TableField("activity_frequency")
    private Integer activityFrequency;

}
